package com.aisile.apis.admin;

import com.aisile.model.admin.dtos.ChannelDto;
import com.aisile.model.admin.pojos.AdChannel;
import com.aisile.model.common.dtos.ResponseResult;
import io.swagger.annotations.*;

/**
 * @Auther:yry
 * @Date:2023/12/20 0020
 * @VERSON:1.0
 */
@Api(value = "频道管理",tags = "AdChannelControllerApi",description = "频道管理API文档")
public interface AdChannelControllerApi {

    @ApiOperation("查询频道信息根据分页以及名称")
    public ResponseResult findAllByPage(ChannelDto dto);

    /**
     * 频道添加
     * @param adChannel
     * @return
     */
    @ApiOperation("保存频道信息")
    public ResponseResult saveAdChannel(AdChannel adChannel);


    /**
     *
     * @param adChannel
     * @return
     */
    @ApiOperation("修改频道信息")
    public ResponseResult updateAdChannel(AdChannel adChannel);

    /**
     *
     * @param id 需要校验
     * @param type 0 1 需要校验
     * @return
     */
    @ApiOperation("修改频道信息状态")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "id",value = "频道id",readOnly = true),
            @ApiImplicitParam(name = "type",value = "频道类型",required = true,defaultValue = "1")
    })
    public ResponseResult updateStatusByType(Integer id,Integer type);

    /**
     *
     * @param id
     * @return
     */
    @ApiOperation("删除频道信息")
    @ApiImplicitParam(name = "id",value = "频道id",required = false)
    public ResponseResult deleteAdChannelById(Integer id);

    /**
     * 查询全部 根据状态展示
     * @return
     */
    @ApiOperation("根据状态展示频道信息")
    public ResponseResult findAll();

}
